hysop.backend.device.opencl.opencl_kernel module¶
- class hysop.backend.device.opencl.opencl_kernel.OpenClKernel(name, program, args_mapping, default_queue=None, default_global_work_size=None, default_local_work_size=None, default_args=None, **kwds)[source]¶
Bases:
object
OpenCL program wrapper, used to generate OpenClKernelLauncher. Manage launching of one OpenCL program and manage its args_mapping as keyword args_mapping.
Create a OpenClKernel.
- Parameters:
name (str) – A name for this program (for logging purposes).
program (cl.Program) – The precompiled program that contains the program to be launched. When a program is passed we can create a unique instance of a program that will have its args_mapping already set in KernelLaunchers.
args_mapping (dict) – Dictionnary containing arg names as keys and tuple (position, type) as values.
default_queue (cl.CommandQueue, optional) – Default queue to run the program.
default_global_work_size (tuple of ints, optional) – Default global work size.
default_local_work_size (tuple of ints, optional) – Default local work size.
default_args (dict, optional) – Default program args_mapping.
kwds (dict) – Base class args_mapping.
- property args_mapping¶
Dictionnary containing arg names as keys and tuple (position, type) as values.
- build_launcher(name=None, name_prefix=None, name_postfix=None, queue=None, local_work_size=None, global_work_size=None, **kwds)[source]¶
Build an OpenClKernel with more default arguments bound. If all arguments are bound, return an OpenClKernelLauncher, else return an OpenClKernel.
- build_list_launcher(launcher_name=None, *args, **kwds)[source]¶
Build a OpenClKernelLauncher and return it as a OpenClKernelListLauncher. See self.build_launcher() and OpenClKernelLauncher.as_list_launcher()
- property default_args¶
Default keyword args_mapping to launch the program.
- property default_global_work_size¶
Default global work size to launch the program.
- property default_local_work_size¶
Default default_local_work_size to launch the program.
- property default_queue¶
Default queue to launch the program.
- property name¶
Get the name of this program.
- property program¶
Get the precompiled program to be launched.